#ifndef _TASK_MANAGER_H_
#define _TASK_MANAGER_H_

#ifdef __cplusplus
extern "C" {
#endif

#include "./SYSTEM/task/cot_task.h"
#include "./SYSTEM/delay/delay.h"
#include "./BSP/KEY/key_manager.h"
#include "./BSP/LED/led_manager.h"
#include "./BSP/LCD/lcd_init.h"
#include "./BSP/LCD/lcd.h"
#include "./BSP/BEEP/beep.h"
#include "./BSP/BEEP/beep_alert_manager.h"
#include "./BSP/BEEP/beep_music_manager.h"
#include "./BSP/ADC/bsp_adc.h"
#include "./BSP/DAC/bsp_dac.h"
#include "./BSP/PWMDAC/pwmdac.h"
#include "./BSP/24CXX/24cxx.h"
#include "./BSP/NORFLASH/norflash.h"
#include "./BSP/RS485/rs485.h"
#include "./cot_menu/cot_menu.h"
#include "../Application/channel_output.h"
#include "stdio.h"

/* 按键 + 菜单扫描任务 */
void ScanKeyTask(void);

/* LED扫描任务 */
void ScanLedTask(void);

/* 报警任务 */
void ScanAlertTask(void);
/* 音乐任务 */
void ScanMusicTask(void);

/* 调度测试任务 */
void TestScheduleTask(void);

/* ADC测试任务 */
void InitADCTest(void);
void ScanADCTask(void);

/* DAC测试任务 */
void InitDACTest(void);
void ScanDACTask(void);

/* PWM DAC测试任务 */
void InitPWMDAC_Test(void);
void ScanPWMDACTask(void);

/* 监控任务 */
void ScanMonitorTask(void);

/* 24CXX测试任务 */
void AT24CXXTest(void);

/* NORFLASH测试任务 */
void NorflashTest(void);

/* RS485测试任务 */
void RS485_1SendTask(void);
void RS485_1ReceiveTask(void);
void RS485_2SendTask(void);
void RS485_2ReceiveTask(void);
void RS485_3SendTask(void);
void RS485_3ReceiveTask(void);

#ifdef __cplusplus
}
#endif

#endif 
